Solid-state drives (SSD) are rapidly becoming the main storage elements of modern IT infrastructures, replacing traditional Hard Disk Drives (HDD). SSDs offer very low latency, high data read/write throughput, and reliable storage of user data. Non-volatile memory express over fabric (NVMe-oF) is an emerging technology that allows hundreds or even thousands of non-volatile memory express (NVMe) SSDs to be connected over Ethernet. The NVMe-oF protocol enables remote Direct Attach Storage (rDAS) implementation. This allows a large number of SSDs to be connected to the remote host. The NVMe-oF protocol uses a remote direct memory access (RDMA) protocol to provide reliable transport service to carry NVMe commands, data, and responses. Internet wide area RDMA protocol (iWARP), RDMA over converged Ethernet (RoCE) v1, and RoCE v2 are some of the transport protocols providing RDMA services.
FIG. 1 depicts an example of system architecture used in conventional NVMe-oF Ethernet SSD storage. As illustrated in FIG. 1, applications running on servers typically access storage through a system software stack. A typical storage system software stack includes many layers, such as Application(s), an Operating System (OS)/File System (FS), NVMe-oF drivers, a Block Storage layer (not shown in FIG. 1), and an RDMA transport layer (not shown in FIG. 1). These numerous layers of the system software can potentially add a large amount of latency to the data access by the applications. Due to advances in storage media technology (e.g., Z-NAND) and networking technology (e.g., 100 Gbps Ethernet), latency contribution due to media and network is significantly dropping. Accordingly, system software latency is becoming a significant component of overall data access latency.
The above information disclosed in this Background section is provided for enhancement of understanding of the background of the invention, and therefore, it may contain information that does not constitute prior art.